﻿using ETWJ.DTO;
using System;
using System.Collections.Generic;
using System.Text;
using System.Threading.Tasks;

namespace ETWJ.Iservice
{
    public interface ICompanyService<T, TDTO> : IServiceTag//, IBaseService<CompanyDTO>
    {
        Task<int> AddNewAsync(T dto);
        Task<TDTO> GetByIdAsync(int id);
        Task<List<TDTO>> GetByPage(int Pageindex = 1, int count = 10);
        Task<int> GetTotalCountAsync();
        Task<CompanyDTO> GetCompanyByName(string companyName);
        Task<int> Update(CompanyDTO dto);
        Task<int> MarkDeleted(int id);
        Task<List<TDTO>> GetALL();
        
    }
}
